Server applications often require a server to remain in operation continuously. For example, an “On-Forever” server has one or more peripheral component interconnect (PCI) buses with device interfaces to attach PCI adapter cards to the buses while the server remains in operation. In particular, the device interface includes a power controller and a bus switch connected to a PCI slot to isolate the connections of the PCI slot until an adapter card, often referred to as a hot-plug adapter card, is inserted into the slot.
After an adapter card is inserted into an available slot, a hot-plug controller determines the power and frequency requirements of the adapter card based upon requirements of other adapter cards connected to the bus and selects the power and frequency for the bus. When the power and frequency requirements have been established, the power controller applies power to the adapter card. Then the controller activates the adapter card by connecting the adapter card to the bus via the bus switch. A PCI bridge coordinates communication between the server and the adapter card.
The power controller regulates power to the adapter cards connected to the bus and recognizes over current faults but the bus remains vulnerable to other types of faults. For example, the power controller does not recognize faults associated with bus switch and buffer problems, adapter cards problems, and bus shorts like faults caused by failure prone connectors and mechanically misplugged adapter cards. Such faults interfere with the communication between the bridge and adapter cards and can, for instance, result in a system crash. Further, the power controller does not determine the source of a fault that causes the bus segment to become inoperative and the server to crash, so a technician has to verify the correct operation of each of the adapter cards, bus switches, and bus segments to determine the source of the fault and repair the server.